//导入Vue
import Vue from 'vue';
//导入Vuex
import Vuex from 'vuex';
//导入持久化存储插件
import createPersistedState from 'vuex-persistedstate';
//导入注册好的模块
import search from './modules/search'
//在Vue中插入注入插件
Vue.use(Vuex);
//配置对象
const store = new Vuex.Store({
	//状态  存储共享的数据
	state: {},
	// 创建同步函数，主要作用：修改state内部的数据【类似主键methods】
	mutations: {},
	// 创建异步函数，主要作用：先被组件调用，然后在函数内部调用mutations的同步函数
	action: {},

	//设置数据 不改变state数据 return返回另外一个形态【类似组件computed】
	getters: {},
	//设置模块开发 指向按照功能划分进行不同模块
	//跟注册登录相关的数据划分一个模块，购物车相关的数据一个模块，订单数据一个模块【数据量庞大且得作较多的功功能区域】
	modules:{
		//应用注册搜索模块
		search
	},
	
	//设置store 持久存储 与本地缓存同步
	plugins:[createPersistedState()]
})

//导出
export default store;
